package com.zmn.plat.persistence.interfaces.gate;

import com.zmn.plat.model.entity.gate.BaseGate;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface BaseGateDao {
    /**
     * @param gateId   @notNull
     * @param gateType @nonNull
     * @param status   status
     * @return
     * @description:条件查询
     * @since 2019/11/2
     */
    BaseGate findByIdAndGateTypeAndStatus(@Param("gateId") Integer gateId, @Param("gateType") Integer gateType, @Param("status") Integer status);

    List<BaseGate> listAllGate();

    /**
     * 根据入口类型查询入口
     * @param type
     * @return
     */
    List<BaseGate> listGateByType(Integer type);

    int deleteByPrimaryKey(Integer gateId);

    int insert(BaseGate record);

    int insertSelective(BaseGate record);

    BaseGate selectByPrimaryKey(Integer gateId);

    int updateByPrimaryKeySelective(BaseGate record);

    int updateByPrimaryKey(BaseGate record);


}